<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>基础语法对象</title>
</head>

<body>
    <?php
    /**
     * 方式1：强制转换（先定义数组，在强转对象）
     * 定义：使用中括号（JS使用大括号）
     * 属性：必须是字符串
     * =>：分隔key、value
     * ->：操作属性
     */
    $objArr = [
        'name' => 'seaton',
        'age' => 18
    ];
    $obj = (object)($objArr);
    echo "<p>$obj->name</p>";

    /**
     * 方式2：定义一个类
     * 定义属性：var + $
     * 使用：$this->变量名（不带$）
     */
    class User{
        //定义属性
        var $name;
        var $age;

        //构造方法
        function __construct($name='test',$age=18)
        {
            $this->name = $name;
            $this->age = $age;
        }

        //方法
        function do(){
            echo "定义类，name：$this->name"."<br>";
        }
    }

    $u1 = new User('ye',30);
    $u1->do();
    $u2 = new User();
    $u2->do();
    ?>
</body>

</html>